package xin.zhiyin.服务.书.实现;

import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import xin.zhiyin.仓库.书.书章节内容图片Repository;
import xin.zhiyin.实体.书章节内容图片Entity;
import xin.zhiyin.服务.书.书章节内容图片Service;

import java.util.List;

@Service
@Transactional(rollbackFor = Exception.class) /*声明式事务管理*/
public class 书章节内容图片Service实现 implements 书章节内容图片Service {
    @Autowired
    private 书章节内容图片Repository 书图片Dao;
    @Override
    public void 保存(书章节内容图片Entity 图片) {
        书图片Dao.save(图片);
    }

    @Override
    public 书章节内容图片Entity 根据Id获取图片(Long id) {
        return 书图片Dao.findById(id).get();
    }

    @Override
    public List<书章节内容图片Entity> 根据ChapterContentId获取图片(Long chapterContentId) {
        return 书图片Dao.findByChapterContentId(chapterContentId);
    }

    @Override
    public List<书章节内容图片Entity> 获取所有图片() {
        return 书图片Dao.findAll();
    }

    @Override
    public void 更新(书章节内容图片Entity 图片) {
        书章节内容图片Entity tupian = 书图片Dao.findById(图片.getId()).get();
        BeanUtils.copyProperties(图片,tupian);
        书图片Dao.save(tupian);
    }

    @Override
    public void 根据ids批量删除图片(List ids) {
        书图片Dao.根据Ids批量删除(ids);
    }

    @Override
    public void 根据urls批量删除图片(List urls) {
        书图片Dao.根据urls批量删除(urls);
    }

    @Override
    public void 根据ChapterContentIds批量删除图片(List chapterContentIds) {
        书图片Dao.根据ChapterContentIds批量删除(chapterContentIds);
    }
}
